An Authoring Tool for Informal and Formal Requirements Specifications
نویسندگان
چکیده
We describe foundations and design principles of a tool that supports authoring of informal and formal software requirements specifications simultaneously and from a single source. The tool is an attempt to bridge the gap between completely informal requirements specifications (as found in practice) and formal ones (as needed in formal methods). The user is supported by an interactive syntax-directed editor, parsers and linearizers. As a formal specification language we realize the Object Constraint Language, a substandard of the UML, on the informal side a fragment of English. The implementation is based on the Grammatical Framework, a generic tool that combines linguistic and logical methods.
منابع مشابه
Integration of Informal and Formal Development of Object-Oriented Safety-Critical Software: A Case Study with the KeY System
The KeY system allows integrated informal and formal development of objectoriented Java software. In this paper we report on a major industrial case study involving safety-critical software for computation of a particular kind of railway time table used by train drivers. Our case study includes formal specification of requirements on the analysis and the implementation level. Particular emphasi...
متن کاملUC-B: Use Case Modelling with Event-B
Use cases are a popular but informal technique used to define and analyse system behaviour. We introduce UC-B a plug-in for the Rodin platform (Event-B tool) that supports the authoring and management of use case specifications with both informal and formal components. The formal component is based on Event-B’s mathematical language. Once the behaviour of the use case is specified, UC-B automat...
متن کاملVisualizing Graphical and Textual Formalisms
Several requirements specification styles for the specification of reactive systems have been proposed in the literature. Informal specifications are the most widely used in the software industry nowadays, mainly because they are “understandable” by domain experts and software engineers, and therefore can be included as part of a software contract. Unfortunately, because of the inherent ambigui...
متن کاملFrom Informal to Formal Specifications in UML
In this paper, we consider a way of bridging informal and formal specification. Most projects have a need for an informal description of the requirements of the system which all people involved can understand. At the same time, there is a need to make some of the requirements more formal. We present a way to relate informal requirements, in form of use cases, to more formal specifications, writ...
متن کاملAn Automatic Approach to Transform CafeOBJ Specifications to Java Template Code
A software specification is a fundamental work product that represents user’s requirements and developers can use it to further develop a software system. A software specification can be expressed by using an informal, a semi-formal, or a formal specification. Existing methodologies and tools can transform semi-formal specifications to code or programs but they have not addressed a transformati...
متن کامل